--- a/include/libc.h
+++ b/include/libc.h
@@ -102,7 +102,6 @@
 #define atoll		p9atoll
 #define getenv		p9getenv
 #define	getwd		p9getwd
-#define	longjmp		p9longjmp
 #undef  setjmp
 #define setjmp		p9setjmp
 #define putenv		p9putenv
--- a/src/pkg/os/user/lookup_unix.go
+++ b/src/pkg/os/user/lookup_unix.go
@@ -9,7 +9,6 @@
 
 import (
 	"fmt"
-	"runtime"
 	"strconv"
 	"strings"
 	"syscall"
@@ -50,16 +49,11 @@
 	var result *C.struct_passwd
 
 	var bufSize C.long
-	if runtime.GOOS == "dragonfly" || runtime.GOOS == "freebsd" {
-		// DragonFly and FreeBSD do not have _SC_GETPW_R_SIZE_MAX
-		// and just return -1.  So just use the same
-		// size that Linux returns.
+	bufSize = C.sysconf(C._SC_GETPW_R_SIZE_MAX)
+	if bufSize = -1 {
 		bufSize = 1024
-	} else {
-		bufSize = C.sysconf(C._SC_GETPW_R_SIZE_MAX)
-		if bufSize <= 0 || bufSize > 1<<20 {
-			return nil, fmt.Errorf("user: unreasonable _SC_GETPW_R_SIZE_MAX of %d", bufSize)
-		}
+	} else if bufSize <= 0 || bufSize > 1<<20 {                        
+		return nil, fmt.Errorf("user: unreasonable _SC_GETPW_R_SIZE_MAX of %d", bufSize)
 	}
 	buf := C.malloc(C.size_t(bufSize))
 	defer C.free(buf)
